package xmla

const elementIndent string = " "

//XmlaPorter Xmla接口
type XmlaPorter interface {
	SetUrl(url string)
	SetUserName(userName string)
	SetPassword(userName string)
	DiscoverDataSources(r XMLADiscoverRestrictions, p XMLADiscoverProperties) (string, error)
	GetCatalogList(r XMLADiscoverRestrictions, p XMLADiscoverProperties) (string, error)
	GetCubeList(r XMLADiscoverRestrictions, p XMLADiscoverProperties) (string, error)
	GetDimensionList(r XMLADiscoverRestrictions, p XMLADiscoverProperties) (string, error)
	GetHierarchyList(r XMLADiscoverRestrictions, p XMLADiscoverProperties) (string, error)
	GetLevelList(r XMLADiscoverRestrictions, p XMLADiscoverProperties) (string, error)
	GetMeasureList(r XMLADiscoverRestrictions, p XMLADiscoverProperties) (string, error)
	GetMemberList(r XMLADiscoverRestrictions, p XMLADiscoverProperties) (string, error)
	execute(mdx string, p XMLAExecuteProperties) (string, error)
}
